package com.yida.gwj.deposit.domain.request.refund;

import com.yida.gwj.deposit.domain.request.*;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import javax.validation.Valid;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.List;

/**
 * @Author: PPV
 * @Date: 2023-02-13
 */
@ApiModel("退多补差 提交保存参数")
public class GwjRefundCompleteSaveSubmitRequest implements Serializable {

    private static final long serialVersionUID = 5422020749736092070L;

    /**
     * 案例信息
     */
    @Valid
    @NotNull(message = "案例信息不能为空")
    @ApiModelProperty(value = "案例信息")
    private GwjRefundCompleteBusinessRequest business;

    /**
     * 业务小区信息
     */
    @Valid
    @NotNull(message = "小区信息不能为空")
    @ApiModelProperty(value = "业务小区参数")
    private GwjRefundCompleteCommunityRequest businessCommunity;

    /**
     * 业务楼栋信息
     */
    @Valid
    @NotEmpty(message = "楼栋信息不能为空")
    @ApiModelProperty(value = "业务楼栋参数")
    private List<GwjRefundCompleteBuildRequest> businessBuilds;

    /**
     * 业务房屋信息
     */
    @Valid
    @NotEmpty(message = "房屋信息不能为空")
    @ApiModelProperty(value = "业务房屋参数")
    private List<GwjRefundCompleteHouseRequest> businessHouses;

    /**
     * 退多补差业务金额
     */
    @Valid
    @NotNull(message = "业务金额不能为空")
    @ApiModelProperty("业务金额参数")
    private GwjRefundCompleteMoneyRequest businessMoney;

    /**
     * 业务日志参数
     */
    @ApiModelProperty("日志参数")
    private GwjDepositBusinessLogRequest businessLog;

    /**
     * 缴存明细
     */
    @ApiModelProperty("缴存明细")
    private List<GwjRefundCompleteDetailRequest> businessDetails;


    public GwjRefundCompleteBusinessRequest getBusiness() {
        return business;
    }

    public void setBusiness(GwjRefundCompleteBusinessRequest business) {
        this.business = business;
    }

    public GwjRefundCompleteCommunityRequest getBusinessCommunity() {
        return businessCommunity;
    }

    public void setBusinessCommunity(GwjRefundCompleteCommunityRequest businessCommunity) {
        this.businessCommunity = businessCommunity;
    }

    public List<GwjRefundCompleteBuildRequest> getBusinessBuilds() {
        return businessBuilds;
    }

    public void setBusinessBuilds(List<GwjRefundCompleteBuildRequest> businessBuilds) {
        this.businessBuilds = businessBuilds;
    }

    public List<GwjRefundCompleteHouseRequest> getBusinessHouses() {
        return businessHouses;
    }

    public void setBusinessHouses(List<GwjRefundCompleteHouseRequest> businessHouses) {
        this.businessHouses = businessHouses;
    }

    public GwjRefundCompleteMoneyRequest getBusinessMoney() {
        return businessMoney;
    }

    public void setBusinessMoney(GwjRefundCompleteMoneyRequest businessMoney) {
        this.businessMoney = businessMoney;
    }

    public GwjDepositBusinessLogRequest getBusinessLog() {
        return businessLog;
    }

    public void setBusinessLog(GwjDepositBusinessLogRequest businessLog) {
        this.businessLog = businessLog;
    }

    public List<GwjRefundCompleteDetailRequest> getBusinessDetails() {
        return businessDetails;
    }

    public void setBusinessDetails(List<GwjRefundCompleteDetailRequest> businessDetails) {
        this.businessDetails = businessDetails;
    }
}
